#ifndef MANEJADORVOTANTE_H_
#define MANEJADORVOTANTE_H_
#include "../Entidades/Votante.h"
#include "../HashExtensible/HashExtensible.h"
#include "../Archivos/ArchivoDeEstructurasVariables.h"
#include <vector>
#include <string>
#include "../Entidades/Utils.h"
#include "../Archivos/Log.h"

using namespace Archivos;
using namespace Entidades;
using namespace Hash;

namespace Manejadores{

class ManejadorVotante {
private:
	ArchivoDeEstructurasVariables* votantes;
	HashExtensible* indicePorDNI;

	unsigned int ultimaPosicionLeida;

public:
	ManejadorVotante();

	bool alta(Votante* votante);
	bool baja(Votante* votante);
	bool modificacion(Votante* votante);
	Votante* recuperar(string clave);
	bool existe(string dniVotante);

	vector<Votante*>* recuperarVotantes(unsigned int numeroDeVotantes);

	virtual ~ManejadorVotante();
};
}
#endif /* MANEJADORVOTANTE_H_ */
